Centos8使用yum提示Error: Failed to synchronize cache for repo 'AppStream'
原因
自2022年1月31日起,CentOS团队从官方镜像中移除CentOS 8的所有包,但软件包仍在官方镜像上保留一段时间。
现在被转移到https://vault.centos.org
。如需继续运行旧CentOS 8,可以在/etc/yum.repos中更新repos.d,使用vault.centos.org
代替mirror.centos.org
修改文件
1 | cd /etc/yum.repos.d/ |
里面有很多源文件,打开文件,注释掉mirrorlist
一行,然后找到baseurl
一行解开注释,并且修改URL为最新地址。
例如:1
2
3
4
5
6
7
8
9vim CentOS-Base.repo
[BaseOS]
name=CentOS-$releasever - Base
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=BaseOS&infra=$infra
baseurl=http://vault.centos.org/$contentdir/$releasever/BaseOS/$basearch/os/
gpgcheck=1
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-centosofficial
可以用一下方法批量替换:1
2sudo sed -i 's/mirrorlist/#mirrorlist/g' /etc/yum.repos.d/CentOS-*
sudo sed -i 's|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g' /etc/yum.repos.d/CentOS-*